﻿<?xml version="1.0" encoding="utf-8" ?>
<GuidancePackage xmlns="http://schemas.microsoft.com/pag/gax-core"
    Name="Salamanca" 
    Caption="Salamanca"
    Description="Business Application Software Factory"
    Guid="041e77d6-5685-43fa-88bf-c4ec6d837484" 
    SchemaVersion="1.0">
  <Overview Url="Html\Overview.html" />
  <Recipes>
    <Recipe Name="CreateSolution">
      <Types>
        <xi:include href="TypeAlias.xml" xmlns:xi="http://www.w3.org/2001/XInclude" xpointer="xmlns(gax=http://schemas.microsoft.com/pag/gax-core) xpointer(gax:Types/gax:TypeAlias)" />
      </Types>
      <Caption>Collects information for a new Salamanca based solution.</Caption>
      <Arguments>
        <Argument Name="ApplicationName" Required="true">
          <Converter Type="Microsoft.Practices.RecipeFramework.Library.Converters.CodeIdentifierStringConverter, Microsoft.Practices.RecipeFramework.Library" />
        </Argument>
        <Argument Name="ApplicationNamespace" Required="true">
          <Converter Type="Microsoft.Practices.RecipeFramework.Library.Converters.NamespaceStringConverter, Microsoft.Practices.RecipeFramework.Library" />
        </Argument>
        <Argument Name="ModelProjectName">
          <ValueProvider Type="Evaluator" Expression="$(ApplicationName).Model">
            <MonitorArgument Name="ApplicationName" />
          </ValueProvider>
        </Argument>
        <Argument Name="ModelProjectNamespace">
          <ValueProvider Type="Evaluator" Expression="$(ApplicationNamespace).Model">
            <MonitorArgument Name="ApplicationNamespace" />
          </ValueProvider>
        </Argument>
      </Arguments>
      <GatheringServiceData>
        <Wizard xmlns="http://schemas.microsoft.com/pag/gax-wizards" SchemaVersion="1.0">
          <Pages>
            <Page>
              <Title>Salamanca Application Information</Title>
              <LinkTitle>Salamanca</LinkTitle>
              <Help>Enter the new application name (e.g. "MyApp") and namespace (e.g. "Company.Project.MyApp").</Help>
              <Fields>
                <Field ValueName="ApplicationName" Label="Application Name" InvalidValueMessage="Must be a valid .NET identifier (e.g. it shouldn't contain spaces or special characters)." />
                <Field ValueName="ApplicationNamespace" Label="Namespace" InvalidValueMessage="Must be a valid .NET namespace identifier (e.g. it shouldn't contain spaces or special characters)." />
              </Fields>
            </Page>
          </Pages>
        </Wizard>
      </GatheringServiceData>
    </Recipe>
  </Recipes>
</GuidancePackage>
